Micron Document
`:top
In der `F33f`_`[Mathematik`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Mathematik]`_`f, der `F33f`_`[Volkswirtschaftslehre`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Volkswirtschaftslehre]`_`f und der `F33f`_`[Informatik`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Informatik]`_`f bezeichnet das `!Stable Marriage Problem`! (auch `!Stable Matching Problem,`! englisch für: Problem der stabilen Paarung, abgekürzt „SMP“) das Problem, eine stabile Paarung zwischen den Elementen zweier gleich großer Mengen zu finden. Dabei haben alle Elemente beider Mengen eine eindeutige Reihenfolge der Präferenz für jedes Element der anderen Menge.

Eine Paarung (oder ein Matching) ist eine Zuordnung der Elemente der einen Menge zu den Elementen der anderen Menge. Sie ist `*nicht`* stabil, wenn

• ein Element `*A`* aus der ersten Menge ein Element `*B`* aus der zweiten Menge gegenüber dem Element der zweiten Menge bevorzugt, mit dem `*A`* aktuell gematcht ist, `*und`*
• `*B`* ebenfalls `*A`* gegenüber dem Element aus der ersten Menge präferiert, mit dem `*B`* aktuell gematcht ist.

Mit anderen Worten: Eine Paarung ist stabil, wenn kein Match (`*A`*, `*B`*) existiert, den `*sowohl`* `*A`* `*als`* `*auch`* `*B`* im Vergleich zu ihrem jeweiligen aktuellen Match präferieren würden.

Das `*Stable Marriage Problem`* nimmt `F33f`_`[heterosexuelle`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Heterosexualität]`_`f Paare an und wurde wie folgt formuliert:

`*„`*n`* Männer und `*n`* Frauen, von denen jede Person alle Angehörigen des anderen Geschlechts in der Reihenfolge ihrer Präferenz angeordnet hat, sollen so `F33f`_`[verheiratet`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Ehe]`_`f werden, dass es keine zwei Menschen unterschiedlichen Geschlechts gibt, die beide lieber einander geheiratet hätten als ihre gegenwärtigen Partner. Wenn es keine solchen Paare gibt, gilt die Menge der Ehen als stabil.“`*

Vom `F33f`_`[Stable Roommates Problem`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Stable_Roommates_Problem]`_`f unterscheidet sich das Stable Marriage Problem, weil es hier zwei verschiedene Mengen gibt (in diesem Beispiel Männer und Frauen), deren Elemente paarweise kombiniert werden müssen.

>>Contents

• `F0af`_`[Anwendungen`#anwendungen]`_`f
• `F0af`_`[Gale-Shapley-Algorithmus`#gale-shapley-algorithmus]`_`f
• `F0af`_`[Algorithmus`#algorithmus]`_`f
• `F0af`_`[Optimalität der Lösung`#optimalit-t-der-l-sung]`_`f
• `F0af`_`[Stable Marriage mit Indifferenz`#stable-marriage-mit-indifferenz]`_`f
• `F0af`_`[Ähnliche Probleme`#hnliche-probleme]`_`f
• `F0af`_`[Implementierung in Softwarepaketen`#implementierung-in-softwarepaketen]`_`f
• `F0af`_`[Siehe auch`#siehe-auch]`_`f
• `F0af`_`[Lehrbücher und weitere wichtige Werke, die im Text nicht zitiert werden`#lehrb-cher-und-weitere-wichtige-werke-die-im-text-nicht-zitiert-werden]`_`f
• `F0af`_`[Weblinks`#weblinks]`_`f
• `F0af`_`[Einzelnachweise`#einzelnachweise]`_`f

-─

>>Anwendungen

Algorithmen zur Lösung des `*Stable Marriage Problem`* lassen sich in vielen Praxissituationen anwenden. Dabei ist die Zuweisung von Medizinabsolventen zur `F33f`_`[ärztlichen Weiterbildung`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Ärztliche_Weiterbildung]`_`f im Krankenhaus in den USA vielleicht die bekannteste. Im Jahr 2012 erhielten `F33f`_`[Lloyd Shapley`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Lloyd_Shapley]`_`f und `F33f`_`[Alvin E. Roth`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Alvin_E._Roth]`_`f den `F33f`_`[Nobelpreis für Wirtschaftswissenschaften`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Nobelpreis_für_Wirtschaftswissenschaften]`_`f „für die Theorie stabiler Allokationen und die Anwendung des Marktdesigns“.`:cite-ref-1[`F5bf`_`[1`#cite-note-1]`_`f]

Eine wichtige Anwendung von `*Stable Marriage`* im großen Rahmen ist die Zuweisung von Nutzern zu `F33f`_`[Servern`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Server]`_`f bei einem großen verteilten Internetdienst.`:cite-ref-nuggets-2-0[`F5bf`_`[2`#cite-note-nuggets-2]`_`f] Milliarden von Nutzern rufen Webseiten, Videos und andere Dienste im Internet auf. Dabei muss jeder Nutzer zu einem von (potenziell) hunderttausenden Servern auf der ganzen Welt gematcht werden, die diesen Dienst anbieten. Ein Nutzer bevorzugt solche Server, die in hinreichender Nähe sind, um eine schnellere Antwortzeit für den gewünschten Dienst zu ermöglichen. Das führt zu einer (partiellen) Präferenzordnung der Server für jeden Nutzer. Jeder Server wiederum bevorzugt Nutzer, derer Bedienung wenig kostet, sodass sich eine (partielle) Präferenzordnung der Nutzer für jeden Server ergibt. `F33f`_`[Content Delivery Networks`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Content_Delivery_Network]`_`f, die einen großen Teil der weltweiten Inhalte und Dienste verteilen, lösen dieses große und komplexe Stable Marriage Problem zwischen Nutzern und Servern alle Zehntelsekunden. Damit ermöglichen sie Milliarden von Nutzern, mit den jeweiligen Servern gematcht zu werden, die ihre gewünschten `F33f`_`[Webseiten`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Webseite]`_`f, Videos oder anderen Dienste zur Verfügung stellen.`:cite-ref-nuggets-2-1[`F5bf`_`[2`#cite-note-nuggets-2]`_`f]

>>Gale-Shapley-Algorithmus

Im Jahr 1962 bewiesen `F33f`_`[David Gale`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=David_Gale_(Ökonom)]`_`f und Lloyd Shapley, dass es für eine gleiche Anzahl an Männern und Frauen immer möglich ist, das `*Stable Marriage Problem`* zu lösen, sodass alle Ehen stabil sind. Sie präsentierten dafür einen `F33f`_`[Algorithmus`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Algorithmus]`_`f.`:cite-ref-gale-3-0[`F5bf`_`[3`#cite-note-gale-3]`_`f]`:cite-ref-4[`F5bf`_`[4`#cite-note-4]`_`f]

Der `!Gale-Shapley-Algorithmus`! enthält eine gewisse Anzahl von „Runden“ oder „`F33f`_`[Iterationen`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Iteration]`_`f“:

• In der ersten Runde macht zuerst

a) jeder nicht-`F33f`_`[verlobte`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Verlobung]`_`f Mann derjenigen Frau, die ihm am besten gefällt, einen Heiratsantrag, und dann
b) antwortet jede Frau dem Verehrer, der ihr am besten gefällt, mit „vielleicht“ und allen anderen mit „nein“. Damit ist sie vorläufig mit dem Verehrer verlobt, der ihr bis dahin am besten gefällt, und dieser Verehrer ist entsprechend vorläufig mit ihr verlobt.

• In jeder folgenden Runde macht zuerst

a) jeder nicht-verlobte Mann derjenigen Frau einen Antrag, die ihm am besten gefällt und der er noch keinen Antrag gemacht hat (unabhängig davon, ob diese Frau schon verlobt ist).
b) Dann antwortet jede Frau „vielleicht“, wenn sie gerade nicht verlobt ist oder wenn sie diesen Mann gegenüber ihrem gegenwärtigen vorläufigen Partner bevorzugt (in diesem Fall weist sie ihren gegenwärtigen vorläufigen Partner zurück und löst die Verlobung auf). Dadurch, dass Verlobungen vorläufig sind, behält eine schon verlobte Frau das Recht, ihren bis-dato-Partner sitzenzulassen und durch einen besseren zu ersetzen.

• Dieser Vorgang wird so lange wiederholt, bis jeder verlobt ist.

Die `F33f`_`[Laufzeitkomplexität`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Zeitkomplexität]`_`f dieses Algorithmus ist O ( n 2 ) {\\displaystyle O(n^{2})} , wobei n {\\displaystyle n} die Anzahl der Männer oder Frauen ist.`:cite-ref-iwamamiyazaki2008-5-0[`F5bf`_`[5`#cite-note-iwamamiyazaki2008-5]`_`f]

Dieser Algorithmus garantiert, dass

`!Jeder heiratet`!
Am Ende kann es keinen Mann und keine Frau geben, die beide nicht verlobt sind. Das liegt daran, dass er ihr irgendwann einen Antrag gemacht haben muss (denn ein Mann wird schließlich jeder Frau einen Antrag machen, wenn dies nötig sein sollte). Und sobald sie einen Antrag erhält, wäre sie daraufhin notwendigerweise (mit irgendjemandem) verlobt.
`!Die Ehen stabil sind`!
`F33f`_`[Alice und Bob`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Alice_und_Bob]`_`f seien beide verlobt, aber nicht miteinander. Nach Beendigung des Algorithmus ist es nicht möglich, dass sowohl Alice als auch Bob einander gegenüber ihren jeweiligen derzeitigen Partnern vorziehen. Wenn Bob Alice seiner gegenwärtigen Partnerin vorzieht, muss er Alice vor dieser einen Antrag gemacht haben. Wenn Alice seinen Antrag angenommen hat, aber schlussendlich nicht mit ihm verheiratet ist, muss sie ihn für jemanden, den sie mehr mag, verlassen haben. Daher kann sie Bob nicht mehr mögen als ihren gegenwärtigen Partner. Wenn Alice seinen Antrag abgelehnt hat, war sie bereits mit jemandem verlobt, den sie mehr mochte als Bob.

>>>Algorithmus

`B100`F9d9function stableMatching {`f`b
`B100`F9d9 Initialisiere alle m ∈ M und w ∈ W als alleinstehend`f`b
`B100`F9d9 while ∃ Mann m, der noch einer Frau w einen Antrag machen kann alleinstehend {`f`b
`B100`F9d9 w = erste Frau auf m’s Liste, der m noch keinen Antrag gemacht hat`f`b
`B100`F9d9 if w ist alleinstehend`f`b
`B100`F9d9 (m, w) sind verlobt`f`b
`B100`F9d9 else gibt es schon ein Paar (m', w)`f`b
`B100`F9d9 if w m gegenüber m' bevorzugt`f`b
`B100`F9d9 m' wird alleinstehend`f`b
`B100`F9d9 (m, w) sind verlobt`f`b
`B100`F9d9 else`f`b
`B100`F9d9 (m', w) bleiben verlobt`f`b
`B100`F9d9 }`f`b
`B100`F9d9}`f`b

>>>Optimalität der Lösung

Während die Lösung stabil ist, ist sie nicht notwendigerweise auch aus Sicht aller Individuen `F33f`_`[optimal`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Optimierungsproblem]`_`f. Die traditionelle Form des Algorithmus ist optimal für die Gruppe, die die Anträge macht. Diese stabile und für die Antragsteller optimale Lösung muss jedoch nicht optimal für die Antragempfänger sein. Das zeigt folgendes Beispiel:

Es gibt drei Antragsteller (A,B,C) und drei Antragempfänger (X,Y,Z), die folgende Präferenzen haben:

A: YXZ B: ZYX C: XZY X: BAC Y: CBA Z: ACB

Es gibt drei stabile Lösungen für diese Matchinganordnung:

Die Antragsteller erhalten ihre erste Wahl und die Antragempfänger ihre dritte (AY, BZ, CX)
Alle Teilnehmer erhalten ihre zweite Wahl (AX, BY, CZ)
Die Antragempfänger erhalten ihre erste Wahl und die Antragsteller ihre dritte (AZ, BX, CY)

Alle drei Lösungen sind stabil, weil Instabilität erfordert, dass beide Teilnehmer mit einem anderen Partner glücklicher wären. Wenn eine Gruppe ihre erste Wahl erhält, garantiert dies, dass die Matches stabil sind, weil Gruppenmitglieder mit jedem anderen vorgeschlagenen Match unglücklicher würden. Wenn jeder seine zweite Wahl erhält, ist garantiert, dass jedes andere Match einer der beiden Parteien missfallen wird. Der Algorithmus `F33f`_`[konvergiert`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Grenzwert_(Funktion)]`_`f in einer einzigen Runde zur Antragsteller-optimalen Lösung, weil jeder Antragempfänger genau einen Antrag erhält und daher diesen Antrag als beste Wahl auswählt. Damit ist garantiert, dass der Antrag jedes Antragstellers angenommen wird, womit das Match endet. Diese `F33f`_`[Asymmetrie`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Asymmetrie]`_`f der Optimalität ist der Tatsache geschuldet, dass die Antragsteller aus der gesamten Menge wählen können, die Antragempfänger aber zu jedem Zeitpunkt aus einer begrenzten `F33f`_`[Teilmenge`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Teilmenge]`_`f der Antragsteller wählen.

>>Stable Marriage mit Indifferenz

In der klassischen Version des Problems muss jede Person die Angehörigen des anderen Geschlechts in einer strikten Präferenzordnung anordnen. In der Praxis kann eine Person allerdings zwei oder mehr Personen im gleichen Maße favorisieren. Eine solche unentschiedene Präferenz wird als Indifferenz bezeichnet. Im folgenden Beispiel ist m 2 {\\displaystyle m_{2}} unentschieden zwischen w 3 & & w 1 {\\displaystyle w_{3}\\&w_{1}} , und w 2 {\\displaystyle w_{2}} ist unentschieden zwischen m 1 & & m 2 {\\displaystyle m_{1}\\&m_{2}} .

m 1 [ w 2 w 1 w 3 ] w 1 [ m 3 m 2 m 1 ] {\\displaystyle m_{1}[\\ w_{2}\\ w_{1}\\ w_{3}\\ ]\\ \\ \\ \\ \\ \\ w_{1}[\\ m_{3}\\ m_{2}\\ m_{1}\\ ]}

m 2 [ ( w 3 w 1 ) w 2 ] w 2 [ ( m 1 m 2 ) m 3 ] {\\displaystyle m_{2}[\\left(w_{3}\\ w_{1}\\right)w_{2}]\\ \\ \\ \\ \\ \\ w_{2}[\\left(m_{1}\\ m_{2}\\right)m_{3}]}

m 3 [ w 1 w 2 w 3 ] w 3 [ m 2 m 3 m 1 ] {\\displaystyle m_{3}[\\ w_{1}\\ w_{2}\\ w_{3}\\ ]\\ \\ \\ \\ \\ \\ w_{3}[\\ m_{2}\\ m_{3}\\ m_{1}\\ ]}

Wenn unentschiedene Präferenzlisten zugelassen sind, hat das Stable Marriage Problem drei `F33f`_`[Stabilitätskonzepte`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Stabilität_(Sortierverfahren)]`_`f, die in den folgenden Abschnitten behandelt werden.

Ein Matching wird als `!schwach stabil`! bezeichnet, sofern es kein Paar gibt, sodass jeder von beiden den anderen strikt gegenüber seinem/ihren Matchingpartner bevorzugt. Robert W. Irving`:cite-ref-sciencedirect-6-0[`F5bf`_`[6`#cite-note-sciencedirect-6]`_`f] hat den `!Gale-Shapley-Algorithmus`! wie folgt erweitert, um so ein schwach stabiles Matching zum Zeitpunkt O ( n 2 ) {\\displaystyle O(n^{2})} zu liefern, wobei n die Größe des Stable Marriage Problem bezeichnet. Wenn die Männer und Frauen in ihren Präferenzen indifferent sind, wird willkürlich entschieden. Mit dem Fortschreiten des Algorithmus werden die Präferenzlisten immer kürzer.

`B100`F9d9Ordne jede Person als alleinstehend ein;`f`b
`B100`F9d9 while (irgendein Mann m alleinstehend ist) do`f`b
`B100`F9d9 begin`f`b
`B100`F9d9 w := erste Frau auf m's Liste;`f`b
`B100`F9d9 m macht einen Antrag und verlobt sich mit w;`f`b
`B100`F9d9 if (irgendein Mann m' mit w verlobt ist) then`f`b
`B100`F9d9 ordne m' als alleinstehend ein;`f`b
`B100`F9d9 for each (Nachfolger m'' von m auf w's Liste) do`f`b
`B100`F9d9 delete das Paar (m'', w)`f`b
`B100`F9d9 end;`f`b
`B100`F9d9 gib die verlobten Paare aus, die ein stabiles Matching bilden`f`b

Ein Matching ist `!super-stabil`!, wenn es kein Paar gibt, sodass jeder von beiden den anderen strikt gegenüber seinem/ihrem Partner bevorzugt oder zwischen ihnen indifferent ist. Robert W. Irving`:cite-ref-sciencedirect-6-1[`F5bf`_`[6`#cite-note-sciencedirect-6]`_`f] hat den oben beschriebenen Algorithmus modifiziert, um zu überprüfen, ob es ein solches super-stabiles Matching gibt und, falls dieses existiert, das Matching zum Zeitpunkt O ( n 2 ) {\\displaystyle O(n^{2})} ausgibt. Im Folgenden der `F33f`_`[Pseudo-Code`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Pseudocode]`_`f:

`B100`F9d9Ordne jede Person als alleinstehend ein;`f`b
`B100`F9d9repeat`f`b
`B100`F9d9 while (irgendein Mann m alleinstehend ist) do`f`b
`B100`F9d9 for each (Frau w am Anfang von m's Liste) do`f`b
`B100`F9d9 begin`f`b
`B100`F9d9 m macht einen Antrag und verlobt sich mit w;`f`b
`B100`F9d9 for each (strikten Nachfolger m' von m auf w's Liste) do`f`b
`B100`F9d9 begin`f`b
`B100`F9d9 if (m' ist verlobt) mit w then`f`b
`B100`F9d9 break die Verlobung;`f`b
`B100`F9d9 delete the pair (m'. w)`f`b
`B100`F9d9 end`f`b
`B100`F9d9 end`f`b
`B100`F9d9 for each (woman w who is multiply engaged) do`f`b
`B100`F9d9 begin`f`b
`B100`F9d9 break all engagements involving W;`f`b
`B100`F9d9 for each (man m at the tail of w’s list) do`f`b
`B100`F9d9 delete the pair (m. w)`f`b
`B100`F9d9 end;`f`b
`B100`F9d9until (some man’s list is empty) or (jeder verlobt ist);`f`b
`B100`F9d9if jeder verlobt ist, then`f`b
`B100`F9d9 ist die Verlobungsrelation ein super-stabiles Matching`f`b
`B100`F9d9else`f`b
`B100`F9d9 existiert kein super-stabiles Matching`f`b

Ein Matching ist `!stark stabil`!, wenn es kein Paar x, y gibt, sodass x y strikt gegenüber seinem/ihrem Partner bevorzugt und y entweder x strikt gegenüber seinem/ihrem Partner bevorzugt oder indifferent zwischen beiden ist. Robert W. Irving`:cite-ref-sciencedirect-6-2[`F5bf`_`[6`#cite-note-sciencedirect-6]`_`f] hat einen Algorithmus entwickelt, der überprüft, ob so ein stark stabiles Matching existiert und, wenn es existiert, das Matching ausgibt. Der Algorithmus berechnet das perfekte Matching zwischen Mengen von Männern und Frauen, sodass er die kritische Menge an Männern findet, die mit mehreren Frauen verlobt sind. Da solche Verlobungen niemals stabil sind, werden alle solchen Paare gelöscht, und der Antragsprozess wird wiederholt, bis entweder 1) die Präferenzliste irgendeines Mannes leer wird (in diesem Fall gibt es kein stark stabiles Matching) oder 2) ein stark stabiles Matching erreicht wird. Hier der Pseudo-Code, um ein stark stabiles Matching zu finden. Es hat eine Laufzeit von O ( n 4 ) {\\displaystyle O(n^{4})} , was im Lemma 4.6 erklärt wird.`:cite-ref-sciencedirect-6-3[`F5bf`_`[6`#cite-note-sciencedirect-6]`_`f]

`B100`F9d9Ordne jede Person als alleinstehend ein;`f`b
`B100`F9d9repeat`f`b
`B100`F9d9 while (irgendein Mann alleinstehend ist) do`f`b
`B100`F9d9 for each (Frau w am Anfang von m's Liste) do`f`b
`B100`F9d9 begin`f`b
`B100`F9d9 m macht einen Antrag und verlobt sich mit w;`f`b
`B100`F9d9 for each (strikten Nachfolger m' von m auf w's Liste) do`f`b
`B100`F9d9 begin`f`b
`B100`F9d9 if (m' verlobt ist) mit w then`f`b
`B100`F9d9 break die Verlobung;`f`b
`B100`F9d9 delete das Paar (m'. w)`f`b
`B100`F9d9 end`f`b
`B100`F9d9 end`f`b
`B100`F9d9 if (die Verlobungsrelation kein perfektes Matching enthält) then`f`b
`B100`F9d9 begin`f`b
`B100`F9d9 finde die kritische Menge Z an Männern;`f`b
`B100`F9d9 for each (Frau w die mit einem Mann aus Z verlobt ist) do`f`b
`B100`F9d9 begin`f`b
`B100`F9d9 break alle Verlobungen von w;`f`b
`B100`F9d9 for each Mann m am Ende von w's Liste do`f`b
`B100`F9d9 delete das Paar (m, w)`f`b
`B100`F9d9 end;`f`b
`B100`F9d9 end;`f`b
`B100`F9d9until (die Liste eines Mannes leer ist) or (jeder verlobt ist);`f`b
`B100`F9d9if jeder verlobt ist then`f`b
`B100`F9d9 ist die Verlobungsrelation ein super-stabiles Matching`f`b
`B100`F9d9else`f`b
`B100`F9d9 existiert kein stark-stabiles Matching`f`b

>>Ähnliche Probleme

Das `F33f`_`[Zuordnungsproblem`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Zuordnungsproblem]`_`f versucht, in einem gewichteten zweiteiligen Graphen ein Matching mit maximaler Gewichtung zu finden. Maximal gewichtete Matchings müssen nicht stabil sein, aber in manchen Anwendungen ist ein maximal gewichtetes Matching besser als ein stabiles.

Das `*Stable Roommates Problem`* ist ähnlich wie das `*Stable Marriage Problem`*, aber es unterscheidet sich insofern davon, dass alle Teilnehmer einer einzigen Gruppe angehören (anstatt zu gleichen Teilen in „Männer“ und „Frauen“ getrennt zu sein).

Das Krankenhäuser/Assistenzärzte-Problem – auch bekannt als das Hochschulzulassungsproblem – unterscheidet sich vom `*Stable Marriage Problem`* insofern, dass ein Krankenhaus mehrere Assistenzärzte aufnehmen kann. Ebenso kann eine Hochschule mehr als einen Studenten in einem Jahrgang haben. Algorithmen zur Lösung des Krankenhäuser/Assistenzärzte-Problems können `*krankenhausorientiert`* sein (wie es das `F33f`_`[NRMP`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=NRMP]`_`f vor 1995 war)`:cite-ref-robinson-7-0[`F5bf`_`[7`#cite-note-robinson-7]`_`f], oder `*ärzteorientiert`*. Dieses Problem wurde mit einem Algorithmus aus dem gleichen originalen Paper von Gale und Shapley gelöst, in dem auch das Stable Marriage Problem gelöst wurde.`:cite-ref-gale-3-1[`F5bf`_`[3`#cite-note-gale-3]`_`f]

Das Krankenhäuser/Assistenzärzte-Problem mit Paaren ermöglicht es, dass die Menge der Assistenzärzte Paare enthält, die zusammen zugewiesen werden müssen – entweder zum gleichen Krankenhaus oder zu zwei konkreten Krankenhäusern, die das Paar ausgewählt hat. Damit will beispielsweise ein Ehepaar sichergehen, dass beide Partner zusammen bleiben und nicht in Ausbildungsprogrammen landen, die weit voneinander entfernt sind. Das Hinzufügen von Paaren zum Krankenhäuser/Assistenzärzte-Problem macht das Problem `F33f`_`[NP-vollständig`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=NP-Vollständigkeit]`_`f.`:cite-ref-8[`F5bf`_`[8`#cite-note-8]`_`f]

Das Matching Problem mit Verträgen stellt eine Generalisierung des Matchingproblems dar, in dem Teilnehmer mit verschiedenen Vertragsbedingungen gematcht werden können.`:cite-ref-9[`F5bf`_`[9`#cite-note-9]`_`f] Ein wichtiger Spezialfall ist dabei das Matching mit flexiblen Löhnen.`:cite-ref-10[`F5bf`_`[10`#cite-note-10]`_`f]

>>Implementierung in Softwarepaketen

• `F33f`_`[R`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=R_(Programmiersprache)]`_`f: Der Gale–Shapley-Algorithm (auch als Deferred-Acceptance-Algorithmus bezeichnet) für das Stable Marriage Problem und das Krankenhäuser/Assistenzärzte-Problem ist im Paket `B100`F9d9matchingMarkets`f`b`:cite-ref-11[`F5bf`_`[11`#cite-note-11]`_`f]`:cite-ref-12[`F5bf`_`[12`#cite-note-12]`_`f] implementiert.

• `F33f`_`[Python`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Python_(Programmiersprache)]`_`f: Der Gale-Shapley-Algorithmus ist gemeinsam mit einigen anderen Algorithmen für generalisierte Matchingprobleme im Paket `B100`F9d9QuantEcon/MatchingMarkets.py`f`b enthalten.`:cite-ref-13[`F5bf`_`[13`#cite-note-13]`_`f]

>>Siehe auch

• `F33f`_`[Zuordnungsproblem`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Zuordnungsproblem]`_`f ein ähnliches Problem, bei dem die Gewichtungen der Graphenkanten austauschbar sind
• `F33f`_`[Stable Roommates Problem`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Stable_Roommates_Problem]`_`f ein ähnliches Problem, aber mit einer Menge der Größe n und Präferenzen der Anzahl n-1
• `F33f`_`[Nash-Gleichgewicht`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Nash-Gleichgewicht]`_`f
• `F33f`_`[Ungarische Methode`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Ungarische_Methode]`_`f ein Algorithmus, um das gewichtete zweigeteilte Matchingproblem zu lösen
• `F33f`_`[Matching (Graphentheorie)`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Matching_(Graphentheorie)]`_`f generalized matching problem in graphs

>>>Lehrbücher und weitere wichtige Werke, die im Text nicht zitiert werden

• L. Dubins, D. Freedman: Machiavelli and the Gale–Shapley algorithm. In: American Mathematical Monthly. 88. Jahrgang, Nr. 7, 1981, S. 485–494, `F33f`_`[doi`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Digital_Object_Identifier]`_`f:10.2307/2321753 (englisch).
• J. Kleinberg, E. Tardos (2005). `*Algorithm Design`*, Kapitel 1, pp 1–12. Siehe auch Begleit-Website für den Text aw-bc.com.
• `F33f`_`[D. E. Knuth`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Donald_Knuth]`_`f (1976). `*Mariages stables`*. Montreal: Les Presses de l'Universite de Montreal.
• `F33f`_`[D. E. Knuth`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Donald_Knuth]`_`f (1996). `*Stable Marriage and Its Relation to Other Combinatorial Problems: An Introduction to the Mathematical Analysis of Algorithms`*, english translation, (CRM Proceedings and Lecture Notes), `F33f`_`[American Mathematical Society`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=American_Mathematical_Society]`_`f.
• B. Pittel (1992). `*On likely solutions of a stable marriage problem`*, The Annals of Applied Probability 2; 358-401.
• A. E. Roth (1984). `*The evolution of the labor market for medical interns and residents: A case study in game theory`*, `F33f`_`[Journal of Political Economy`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Journal_of_Political_Economy]`_`f 92: 991–1016.
• A. E. Roth, M. A. O. Sotomayor (1990). `*Two-sided matching: A study in game-theoretic modeling and analysis`* `F33f`_`[Cambridge University Press`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Cambridge_University_Press]`_`f.
• Yoav Shoham, Kevin Leyton-Brown: Multiagent Systems: Algorithmic, Game-Theoretic, and Logical Foundations. `F33f`_`[Cambridge University Press`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Cambridge_University_Press]`_`f, New York 2009, ISBN 978-0-521-89943-7 (englisch, masfoundations.org). Siehe Abschnitt 10.6.4; downloadable free online.
• J. Schummer, R.V. Vohra: Algorithmic Game Theory. 2007, ISBN 978-0-521-87282-9, Mechanism design without money, S. 255–262 (englisch, cambridge.org [PDF]).

>>Weblinks

• `*National Resident Matching Program and related medical labor markets.`* In: `* Al Roth's game theory, experimental economics, and market design page`*, harvard.edu (archiviert, englisch)

>>Einzelnachweise

`:cite-note-1`!1.`! `F0af`_`[↑`#cite-ref-1]`_`f `*The Prize in Economic Sciences 2012.`* Nobelprize.org, abgerufen am 2. Januar 2018 (englisch).
`:cite-note-nuggets-2`!2.`! `F0af`_`[↑`#cite-ref-nuggets-2-0]`_`f Bruce Maggs and Ramesh Sitaraman: Algorithmic nuggets in content delivery. In: ACM SIGCOMM Computer Communication Review. 45. Jahrgang, Nr. 3, 2015 (englisch, sigcomm.org [PDF]).
`:cite-note-gale-3`!3.`! `F0af`_`[↑`#cite-ref-gale-3-0]`_`f D. Gale, L. S. Shapley: College Admissions and the Stability of Marriage. In: `F33f`_`[American Mathematical Monthly`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=American_Mathematical_Monthly]`_`f. 69. Jahrgang, 1962, S. 9–14, `F33f`_`[doi`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Digital_Object_Identifier]`_`f:10.2307/2312726 (englisch).
`:cite-note-4`!4.`! `F0af`_`[↑`#cite-ref-4]`_`f Harry Mairson: `*The Stable Marriage Problem`*. In: `*The Brandeis Review`*, 12, 1992 (cs.columbia.edu).
`:cite-note-iwamamiyazaki2008-5`!5.`! `F0af`_`[↑`#cite-ref-iwamamiyazaki2008-5-0]`_`f Kazuo Iwama, Shuichi Miyazaki: A Survey of the Stable Marriage Problem and Its Variants. In: International Conference on Informatics Education and Research for Knowledge-Circulating Society (icks 2008). 2008, S. 131–136, `F33f`_`[doi`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Digital_Object_Identifier]`_`f:10.1109/ICKS.2008.7 (englisch).
`:cite-note-sciencedirect-6`!6.`! `F0af`_`[↑`#cite-ref-sciencedirect-6-0]`_`f Robert W. Irving: Stable marriage and indifference. In: Discrete Applied Mathematics. 48. Jahrgang, Nr. 3, 15. Februar 1994, S. 261–272, `F33f`_`[doi`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Digital_Object_Identifier]`_`f:10.1016/0166-218X(92)00179-P (englisch, sciencedirect.com).
`:cite-note-robinson-7`!7.`! `F0af`_`[↑`#cite-ref-robinson-7-0]`_`f Sara Robinson: Are Medical Students Meeting Their (Best Possible) Match? In: SIAM News. Nr. 3, April 2003, S. 36 (englisch, siam.org (`F33f`_`[Memento`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Webarchivierung]`_`f des Originals vom 18. November 2016 im `*`F33f`_`[Internet Archive`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Internet_Archive]`_`f`*) [abgerufen am 2. Januar 2018]).
`:cite-note-8`!8.`! `F0af`_`[↑`#cite-ref-8]`_`f D. Gusfield, R. W. Irving: The Stable Marriage Problem: Structure and Algorithms. MIT Press, 1989, ISBN 0-262-07118-5, S. 54 (englisch).
`:cite-note-9`!9.`! `F0af`_`[↑`#cite-ref-9]`_`f John William Hatfield, Paul Milgrom: Matching with Contracts. In: `F33f`_`[American Economic Review`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=American_Economic_Review]`_`f. 95. Jahrgang, Nr. 4, 2005, S. 913–935, `F33f`_`[doi`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Digital_Object_Identifier]`_`f:10.1257/0002828054825466 (englisch).
`:cite-note-10`!10.`! `F0af`_`[↑`#cite-ref-10]`_`f Vincent Crawford, Elsie Marie Knoer: Job Matching with Heterogeneous Firms and Workers. In: `F33f`_`[Econometrica`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Econometrica]`_`f. 49. Jahrgang, Nr. 2, 1981, S. 437–450, `F33f`_`[doi`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Digital_Object_Identifier]`_`f:10.2307/1913320 (englisch).
`:cite-note-11`!11.`! `F0af`_`[↑`#cite-ref-11]`_`f Thilo Klein: Analysis of Stable Matchings in R: Package matchingMarkets. In: Vignette to R Package matchingMarkets. 2015 (englisch, r-project.org [PDF]).
`:cite-note-12`!12.`! `F0af`_`[↑`#cite-ref-12]`_`f `*matchingMarkets: Analysis of Stable Matchings.`* In: `*R Project.`* Abgerufen im 1. Januar 1 (englisch).
`:cite-note-13`!13.`! `F0af`_`[↑`#cite-ref-13]`_`f `*matchingMarkets.py.`* In: `*Python package.`* Abgerufen im 1. Januar 1 (englisch).

`c`F0af`_`[↑ Back to top`#top]`_`f`a